package com.hmall.search.service;

import com.hmall.common.dto.PageDTO;
import com.hmall.search.pojo.ItemDoc;
import com.hmall.search.pojo.RequestParams;

import java.util.List;
import java.util.Map;

public interface SearchService{
    /**
     * 条件查询索引库信息
     * @param requestParams
     * @return
     */
    PageDTO<ItemDoc> search(RequestParams requestParams);

    /**
     * 过滤项聚合
     * @param requestParams
     * @return
     */
    Map<String, List<String>> getFilters(RequestParams requestParams);

    /**
     * RabbitMQ新增/更新索引库
     * @param jsonString
     */
    void saveOrUpdateEs(String jsonString);

    /**
     * RabbitMQ根据id删除索引库文档
     * @param id
     */
    void deleteEs(String id);
}
